
const {resole} = require('path')

module.exports = {
    entry:'./src/index.js',
    output:{
        filename:'js/built.js',
        path:resole(__dirname,'build')
    },
    mode:'development',
    module:{
        rules:[

        ]
    },
    plugins:[],
    devServe:{},
    devtool:'source-map',
    /* 
    source-map:一种提供源代码到构建后代码映射技术

    组合: [inline-|hidden-|eval-][nosource-][cheap-[module-]]source-map

    可选:
        source-map  外部
            错误代码的准确信息,和源代码的错误位置
            
        inline-source-map   内联
            错误代码的准确信息,和源代码的错误位置

        hidden-source-map   内联
            错误代码原因,但是没有错误位置
            不能最终源代码错误,只能提供构建后代码的错误位置

        eval-source-map 内联
            每一个文件都生成一个对应的source-map,都在eval
            错误代码的准确信息,和源代码的错误位置

        nosource-source-map 外部
            错误代码准确信息,但是没有任何源代码信息
        
        cheap-source-map    外部
            错误代码的准确信息,和源代码的错误位置
            module会将loader的source-map加入

        内联和外部的区别:
            1.外部生成了文件,内联没有
            2.内联构建速度快
        
        开发环境:速度快,调试友好
            速度快(eval>inline>cheap>...)
            eval-cheap-source-map
            eval-source-map

        生产环境:源代码要不要隐藏,调试要不要更友好
            内联会让代码体积变大,所有生成环境不用内联
            nosource-source-map 全部隐藏
            hidden-source-map   隐藏源代码,提示构建后的代码信息

            -->source-map / cheap-module-source-map
    
    
    */
}